热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

HDFS系列(5)|进行API操作前的准备

本篇博文给大家介绍的是进行JavaAPI操作前的准备工作目录一.电脑安装配置Hadoop1.将下载的jar包放到非中文路径2.配置HADOOP_HOME环境变量3.配置Path环境

本篇博文给大家介绍的是进行JavaAPI操作前的准备工作



目录

  • 一. 电脑安装配置Hadoop
    • 1. 将下载的jar包放到非中文路径
    • 2. 配置HADOOP_HOME环境变量
    • 3. 配置Path环境变量
    • 4. 测试是否成功
  • 二. maven
    • 1. 此步可省略,一般用自带的即可
    • 2. 创建一个Maven工程
  • 三. 创建包和类
    • 1. 创建
    • 2. 输入测试代码



个人可根据自己电脑的操作系统下载对应的hadoop.jar包到非中文路径
1
所用jar包的连接如下:
链接:https://pan.baidu.com/s/1krbLrnejfXSsLppauxrCTg
提取码:jbsr


一. 电脑安装配置Hadoop


1. 将下载的jar包放到非中文路径

博主路径为:D:\hadoop\hadoop-2.7.2
2


2. 配置HADOOP_HOME环境变量

3


3. 配置Path环境变量

4


4. 测试是否成功

输入:winutils
5
如果出现上述界面,即代表成功,否则为失败


二. maven


1. 此步可省略,一般用自带的即可

6
7


2. 创建一个Maven工程


  • 1. 创建过程

8
9


  • 2. 添加依赖
    在pom.xml中添加如下内容:

<dependencies><dependency><groupId>junit</groupId><artifactId>junit</artifactId><version>RELEASE</version></dependency><dependency><groupId>org.apache.logging.log4j</groupId><artifactId>log4j-core</artifactId><version>2.8.2</version></dependency><dependency><groupId>org.apache.hadoop</groupId><artifactId>hadoop-common</artifactId><version>2.7.2</version></dependency><dependency><groupId>org.apache.hadoop</groupId><artifactId>hadoop-client</artifactId><version>2.7.2</version></dependency><dependency><groupId>org.apache.hadoop</groupId><artifactId>hadoop-hdfs</artifactId><version>2.7.2</version></dependency><dependency><groupId>jdk.tools</groupId><artifactId>jdk.tools</artifactId><version>1.8</version><scope>system</scope><systemPath>D:/java/jdk-1.8.0/lib/tools.jar</systemPath></dependency></dependencies>

10


  • 3. 添加完毕之后,右上角检查没有报错说明我们的maven项目的jar包配置成功!

11


  • 4. 如果Eclipse/Idea打印不出日志&#xff0c;在控制台上只显示&#xff1a;

1.log4j:WARN No appenders could be found for logger (org.apache.hadoop.util.Shell).
2.log4j:WARN Please initialize the log4j system properly.
3.log4j:WARN See http://logging.apache.org/log4j/1.2/faq.html#noconfig for more info.

需要在项目的src/main/resources目录下&#xff0c;新建一个文件&#xff0c;命名为“log4j.properties”&#xff0c;在文件中填入

log4j.rootLogger&#61;INFO, stdout
log4j.appender.stdout&#61;org.apache.log4j.ConsoleAppender
log4j.appender.stdout.layout&#61;org.apache.log4j.PatternLayout
log4j.appender.stdout.layout.ConversionPattern&#61;%d %p [%c] - %m%n
log4j.appender.logfile&#61;org.apache.log4j.FileAppender
log4j.appender.logfile.File&#61;target/spring.log
log4j.appender.logfile.layout&#61;org.apache.log4j.PatternLayout
log4j.appender.logfile.layout.ConversionPattern&#61;%d %p [%c] - %m%n

12


三. 创建包和类


1. 创建

13


2. 输入测试代码

package com.buwenbuhuo.hdfs;import org.apache.hadoop.conf.Configuration;
import org.apache.hadoop.fs.FileSystem;
import org.apache.hadoop.fs.Path;
import org.junit.Test;import java.io.IOException;
import java.net.URI;
import java.net.URISyntaxException;/*** &#64;author buwenbuhuo* &#64;create 2020-04-22 16:45* com.buwenbuhuo.hdfs - the name of the target package where the new class or interface will be created.* hdfs0422 - the name of the current project.*/
public class HDFSClient {&#64;Testpublic void testMkdirs() throws IOException, InterruptedException, URISyntaxException {// 1 获取文件系统Configuration configuration &#61; new Configuration();// 配置在集群上运行FileSystem fs &#61; FileSystem.get(URI.create("hdfs://hadoop001:9000"), configuration, "bigdata");// 2 创建目录fs.mkdirs(new Path("/0422/buwenbuhuo/test"));// 3 关闭资源fs.close();}}

14
在集群上查看是否成功
15




本篇博文到这里就结束了,小伙伴们有什么疑惑或好的建议可以积极在评论区留言&#xff0c;博主会在后续继续推出HDFS系列的其他内容&#xff0c;希望大家持续关注博主~~



推荐阅读
  • 在Java应用程序中调用`response.getStatus()`方法时遇到了`NoSuchMethodError`异常,经过分析,初步判断为依赖冲突问题。通过检查项目依赖树发现,当前项目版本与某些库的版本不兼容,导致该方法无法被正确识别。建议通过更新相关依赖版本或使用依赖管理工具(如Maven或Gradle)来解决此问题,确保所有依赖项版本一致且兼容。 ... [详细]
  • Ceph API微服务实现RBD块设备的高效创建与安全删除
    本文旨在实现Ceph块存储中RBD块设备的高效创建与安全删除功能。开发环境为CentOS 7,使用 IntelliJ IDEA 进行开发。首先介绍了 librbd 的基本概念及其在 Ceph 中的作用,随后详细描述了项目 Gradle 配置的优化过程,确保了开发环境的稳定性和兼容性。通过这一系列步骤,我们成功实现了 RBD 块设备的快速创建与安全删除,提升了系统的整体性能和可靠性。 ... [详细]
  • Spring框架入门指南:专为新手打造的详细学习笔记
    Spring框架是Java Web开发中广泛应用的轻量级应用框架,以其卓越的功能和出色的性能赢得了广大开发者的青睐。本文为初学者提供了详尽的学习指南,涵盖基础概念、核心组件及实际应用案例,帮助新手快速掌握Spring框架的核心技术与实践技巧。 ... [详细]
  • 深入解析 C 语言与 C++ 之间的差异及关联
    深入解析 C 语言与 C++ 之间的差异及关联 ... [详细]
  • 如何正确配置与使用日志组件:Log4j、SLF4J及Logback的连接与整合方法
    在当前的软件开发实践中,无论是开源项目还是日常工作中,日志框架都是不可或缺的工具之一。本文详细探讨了如何正确配置与使用Log4j、SLF4J及Logback这三个流行的日志组件,并深入解析了它们之间的连接与整合方法,旨在帮助开发者高效地管理和优化日志记录流程。 ... [详细]
  • Windows环境下详细教程:如何搭建Git服务
    Windows环境下详细教程:如何搭建Git服务 ... [详细]
  • 本文将详细介绍如何利用JMeter高效执行API接口测试,涵盖JMeter的基础介绍、安装方法、中文环境配置、主要元件及其作用域和执行顺序等内容,并分享一系列实用的测试技巧,帮助读者全面掌握JMeter接口测试的全过程。 ... [详细]
  • BIRT概述与安装指南
    本文旨在介绍BIRT(Business Intelligence and Reporting Tools)的基本概念及其安装流程。首先,详细解析了BIRT的定义、组成结构及其核心优势。随后,提供了BIRT报表制作工具的安装指南,包括下载源的选择与安装步骤,帮助用户快速上手并利用BIRT进行高效的数据分析与报告生成。 ... [详细]
  • 深入解析Java内存架构、垃圾回收机制与内存泄漏问题
    Java内存架构(Java内存模型)上面是堆的Java内存模型以及Java虚拟机(JVM)中运行的任何Java应用程序的Pe ... [详细]
  • Hbase 的伪分布部署、shell基本操作及hbase相关理念
    1,HBase的的的的伪分布式配置-对zookeeper的配置,这个前面配置过,修改zoo.cfg文件,指定zookeeper的主入口-配置的HBase的的:进入optmo ... [详细]
  • Android目录遍历工具 | AppCrawler自动化测试进阶(第二部分):个性化配置详解
    终于迎来了“足不出户也能为社会贡献力量”的时刻,但有追求的测试工程师绝不会让自己的生活变得乏味。与其在家消磨时光,不如利用这段时间深入研究和提升自己的技术能力,特别是对AppCrawler自动化测试工具的个性化配置进行详细探索。这不仅能够提高测试效率,还能为项目带来更多的价值。 ... [详细]
  • ZeroMQ在云计算环境下的高效消息传递库第四章学习心得
    本章节深入探讨了ZeroMQ在云计算环境中的高效消息传递机制,涵盖客户端请求-响应模式、最近最少使用(LRU)队列、心跳检测、面向服务的队列、基于磁盘的离线队列以及主从备份服务等关键技术。此外,还介绍了无中间件的请求-响应架构,强调了这些技术在提升系统性能和可靠性方面的应用价值。个人理解方面,ZeroMQ通过这些机制有效解决了分布式系统中常见的通信延迟和数据一致性问题。 ... [详细]
  • 在一系列的学习与实践后,Jsoup学习笔记系列即将进入尾声。本文详细介绍了如何使用Jsoup实现从Saz文件到Csv格式的数据解析功能。未来,计划将此功能进一步封装,开发成具有用户界面的独立应用程序,以增强其实用性和便捷性。对于希望深入掌握Jsoup技术的开发者,本文提供了宝贵的参考和实践案例。 ... [详细]
  • 深入解析Spring Boot源码的序章
    本系列文章旨在深入解析Spring Boot的源代码,分享笔者在学习过程中的心得与体会。内容涵盖核心源码分析,可能会对初学者造成一定理解难度,建议读者结合笔者提供的详细注释进行阅读,以获得更好的学习体验。 ... [详细]
  • 在Maven中高效管理多模块项目的依赖关系是一项重要的技能。通过合理配置父POM文件,可以统一管理和控制各子模块的依赖版本,避免重复导入和版本冲突。本文将探讨如何利用Maven的最佳实践,确保项目依赖的一致性和可维护性,同时提高开发效率。 ... [详细]
author-avatar
陳小勳2502936731
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有